The Internet is based on the Internet Protocols (IP) as standardised by the IETF. Some initial objectives with the IP protocols were to interconnect different kinds of physical networks into one large virtual network and to provide a uniform platform for supporting a large range of applications. Some technical reasons for the tremendous success in reaching these objectives are:                Stateless packet forwarding: IP datagram forwarding is stateless with respect to application data streams. Forwarding is performed according to a table of destination address prefixes.        Dynamic and scalable routing: Routes are set up by distributed and dynamic intra- and inter-domain routing protocols such as Open Shortest Path First (OSPF) and Border Gateway Protocol (BGP). These routing protocols automatically detect network failures and set up new routes to avoid failure. Inter-domain routing scales well due to aggregation of network address prefixes into destination rooted sink tree.        
The IP is designed to be used in networks where different traffic flows share network resources equally. This means that the received QoS depends on the current load in the network.
Currently, the Internet becomes more heterogeneous, both in terms of link technologies ranging from fiber optics to wireless, in terms of application service demands ranging from real-time interactive to asynchronous bulk data transfer, and in terms of user demands ranging from business critical use to unstructured home entertainment. This development drives the need for service differentiation in the network. A requirement on QoS mechanisms is that they should be developed according to the basic principles of stateless packet forwarding and scalable aggregation as described above.
The state of the art of QoS in IP networks is described below:
Integrated Service (IntServ)/Resource ReSerVation Protocol (RSVP)
The IntServ architecture and RSVP is a signalled architecture to provide end-to-end QoS guarantees for individual application data streams. The solution provides fine granular service guarantees at the price of per flow state complex packet classification in routers along the path.
For RSVP, there are proposals for setting up aggregated tunnels between an aggregator and a de-aggregator. While this is more scalable, it is still a model where aggregated tunnels are established between pairs of edge routers. These edge routers suffer from at least the same complexity as standard IntServ/RSVP routers. For network policy management, RSVP relies on policy servers.
Differentiated Service (DiffServ)
DiffServ architecture standardises router support for class-based forwarding. DiffServ forwarding in core routers is stateless with respect to application data streams. Traffic conditioners at domain boundaries are used to guard a domain against overload.
The problem of DiffServ is to meet QoS demands for a large range of applications. Resources (bandwidth) for the various traffic classes can be provisioned semi-statically, dimensioned according to expected service characteristics and assumed usage statistics. However, to provide predictable service levels through provisioning only, resources must be over provisioned. This may be possible in homogeneous networks with homogeneous applications and user demands. In real networks where links with vastly different characteristics are interconnected (e.g. fiber optic access and wireless access) and applications/users with various demands over provisioning at all hops is a huge challenge.
To provide predictable services in a heterogeneous environment, DiffServ must rely on dynamic Network Resource Management (NRM) to control the service quality and the usage of provisioned resources. To meet scalability demands, resource management should support aggregation of resource requests.
Multi-Protocol Label Switching (MPLS)
MPLS is a method that extends traditional IP network layer routing and control protocols with label-switched forwarding. MPLS provides connection-oriented switching in IP networks. Labels are associated with specific streams of data (known as Forwarding Equivalence Classes (FEC)). The labels and their FEC bindings are distributed across the network, the MPLS domain, to establish a label switched path. Entering the domain, packets are assigned one or more labels (a stack of labels). Passing through the domain, packets are forwarded based on labels. MPLS can be used to provide QoS by allocating resources to specific label switched paths. MPLS operates only within individual label switched domains. Inter-domain resource reservations are currently not supported.
All methods described above need additional support for inter-domain resource provisioning. This can be provided by a server-based architecture. For RSVP, an architecture of policy servers has been suggested. For DiffServ, QoS agents and bandwidth brokers have been suggested. For MPLS, QoS agents that understand the semantics of MPLS could be used.
In Schelen, O. Quality of Service Agents in the Internet, Doctoral Thesis, Department of Computer Science and Electrical Engineering, Division of Computer Communication, Lule{dot over (a)} University of Technology, Lule{dot over (a)}, 1998, a Network Resource Manager (NRM) is introduced. An NRM can provide inter-domain resource provisioning and call admission control, either independently of the mechanism described above or in co-operation with them. Among these, the combination of differentiated forwarding and NRM operates along the fundamental lines of stateless forwarding and inter-domain aggregation as described. The NRM has path-sensitive admission control, scheduling of resources over time, capability to handle resource requests for immediate and future use, resource signalling between resource manager entities (i.e. inter-domain communication) and aggregation of resource requests towards a destination domain identified by an address prefix. The NRM is aware of topology and characteristics of the network and can thus keep track of resources that exist in a routing domain based on topology. For each domain in the network there is an NRM responsible for admission control. Instances of NRM can perform admission control in its own domain and reserve resources with neighbouring NRMs for other destinations. The NRM can therefore provide a predictable QoS.
The funnel concept is also introduced in Schelen. The funnel concept is a scalable model for aggregation of resource requests. The funnel concept uses NRMs, and NRMs ask for resources from other NRMs. Reservations from different sources to the same destination are aggregated where they merge along the paths so each NRM has at most one reservation per destination domain with their neighbouring agents. An NRM in charge of the domain where the destination point is located can generalize received reservation requests for that point to cover any endpoint in its domain. FIG. 1 shows how resource requests are aggregated towards the destination domain. FIG. 1 is a network 100 comprising 4 domains A, B, C and D. Each domain has an NRM a, b, c, d. Dx, Dy and Dz may be a subnetwork or a base station controller in a wireless access network. The NRM a and the NRM b need resources in domain D; the NRM a to Dy and the NRM b to Dx. Thanks to that the NRMs are aware of the network topology they know that the packets have to be transmitted through domain C. In this example, the NRM a transmits 109 a request of 20 resource units to the NRM c and the NRM b transmits 111 a request of 10 resource units to the NRM c. The NRM c needs 10 resource units in domain D for its own domain and sends therefore a request to the NRM d for 40 resource units. Then the NRM d transmits 114 a confirmation to the NRM c that 40 resource units are reserved in domain D and the NRM c further transmits 110 one confirmation to the NRM a and transmits 112 one confirmation to NRMb. Packets using a reservation are marked by applications or edge routers and checked and/or remarked by police points. This is to ensure that packets only with allowed QoS-class utilize the reserved path.
In the funnel concept, it is assumed that the destination domain is well provisioned or another mechanism is used to ensure QoS in the destination domain. In large networks, it would not be preferable to use the above described funnel concept all the way to the endpoint, since that would not be scalable enough. Instead, funnels are used to reach a destination domain (e.g., a subnet) of suitable size. No resources are reserved for the final part of the path within the destination domain. Therefore, the funnel concept cannot by itself provide end-to-end, i.e. from a source endpoint to a destination endpoint, QoS if the destination domain is under-provisioned. However, there exist destinations that are not connected to a well-provisioned destination domain. One example on such a domain is a wireless access network, where the last hop, i.e. between the base station and the terminal is a bottleneck link. Another problem arises when the hosts are mobile terminals. The QoS mechanisms must allow quick local re-computation of QoS at handover between base stations in a wireless access networks.